Класс SqlDataReader может хранить несколько результирующих множеств, что продемонстрировано в примере DataReader. Два запроса, разделенные точкой с запятой, являются двумя SQL-запросами, которые приводят к возврату двух результирующих множеств, по одному на каждый запрос.
String *ConnString = // Строка
"server=localhost;uid=sa;pwd=;
database=Northwind";
String *cmd = // Строка
"select Customerld,
CompanyName from Customers where
// выбрать Customerld,
CompanyName из Клиентов где
Customerld like 'T%'/select Customerld, CompanyName ..."
// Customerld подобно "I % '; выбрать Customerld, CompanyName
...
int ResultSetCounter = -1; int NumberFields = 0;
reader = command->ExecuteReader(); // команда
Метод FieldCount возвращает количество
столбцов в результирующем множестве.
Поскольку метод GetValues возвращает данные в
их исходном формате, в качестве аргументов
ему передается массив объектов. Метод NextResult
обеспечивает перемещение к следующему
результирующему множеству.
Результатом работы программы DataReader будет
вывод на экран следующих строк:
Result Set Customerld 'CompanyName
0 THEBI The Big Cheese
0 THECR The Cracker Box
0 TOMSP Toms Spezialitaten
0 TORTU Tortuga Restaurante
0 TRADH Tradigao Hipermercados
0 TRAIH Trail's Head Gourmet
Provisioners
1 WANDK Die Wandernde Kuh
1 WARTH Wartian Herkku
1 WELLI Wellington Importadora
1 WHITC White Clover Markets
1 WILMK Wilman Kala
1 WOLZA Wolski Zajazd